Адміністрація вирішила продати даний сайт. За детальною інформацією звертайтесь за адресою: rozrahu@gmail.com

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Не вказано

Інформація про роботу

Рік:
2011
Тип роботи:
Лабораторна робота
Предмет:
Операційні системи
Група:
УІ-31

Частина тексту файла

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ «ЛЬВІВСЬКА ПОЛІТЕХНІКА» / Лабораторна робота № 4 Створення процесів З курсу “Операційні системи“ Мета: навчитись створювати процеси і курувати їх виконанням а ОС Linux. Завдання: Розробити програму, що виконує "розгалуження"за допомогою системного виклику fork (). Вивести на екран ідентифікатори PID для батьківського і дочірнього процесів. Використовувати функцію пере направлення стандартного виводу у файл. Варіанти завдань 1. Призупинити на 1 с батьківський процес. У дочірньому процесі виконати стандартну команду ps, перенаправлення виводу у файл номер 1. Слідом за цим завершити дочірній процес. У батьківському процесі викликати ps і пере направити ввід в файл номер 2. Код програми написаної на мові с #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <errno.h> #include <fcntl.h> int main(){ int pid; int outfile; puts("Who is there?"); pid=fork(); if (pid == 0) { // Потомок printf("I'm, CHILD (PID:%d)\n",getpid()); if ((outfile = dup(1))==-1) return -1; close(1); // закрытие стандартного устройства вывода (TTY) if ((outfile=open("1.txt", O_WRONLY|O_TRUNC|O_CREAT,00644))>=0) { execl("/bin/ps","ps",NULL); } return 0; } else if (pid > 0){ // Родитель sleep(1); printf("I'm, PARENT (PID:%d)\n",getpid()); if ((outfile = dup(1))==-1) return -1; close(1); // закрытие стандартного устройства вывода (TTY) if ((outfile=open("2.txt", O_WRONLY|O_TRUNC|O_CREAT,00644))>=0) { execl("/bin/ps","ps",NULL); } return 0; } else { perror("Fork error "); return -1; } wait(pid); return 0; } Результати роботи програми програми / / / Висновок: на цій роботі я навчився створювати процеси і курувати їх виконанням а ОС Linux.
Антиботан аватар за замовчуванням

01.01.1970 03:01

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини